﻿using SosData;
using SosForms;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace UOCmaker
{
    public partial class FormBuscarRespuesta : FormBase
    {

        #region " Constructores "

        /// <summary>
        /// Constructor
        /// </summary>
        public FormBuscarRespuesta()
        {
            InitializeComponent();
        }
        #endregion

        private void FormBuscarRespuesta_Load(object sender, EventArgs e)
        {
            this.cmbIdiomas.Items.Add(SosData.PlantillaContenido.Idiomas.Cat);
            this.cmbIdiomas.Items.Add(SosData.PlantillaContenido.Idiomas.Esp);
            this.cmbIdiomas.Items.Add(SosData.PlantillaContenido.Idiomas.En);

        }

        SosData.PlantillaContenido.Idiomas idioma;

        /// <summary>
        /// Buscar plantilla por consulta
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void butBuscar_Click(object sender, EventArgs e)
        {
            this.Buscar(this.txtConsulta.Text,this.cmbIdiomas.Text);
        }

        /// <summary>
        /// Buscar plantilla
        /// </summary>
        private void Buscar(string consulta, string _idioma)
        {
            listPlantillaContenidos.Items.Clear();

            switch (_idioma)
            {
                case "Cat":
                    idioma = SosData.PlantillaContenido.Idiomas.Cat;
                    break;

                case "Esp":
                    idioma = SosData.PlantillaContenido.Idiomas.Esp;
                    break;

                case "En":
                    idioma = SosData.PlantillaContenido.Idiomas.En;
                    break;

                default:
                    break;
            }

            foreach (PlantillaContenido pc in SosBL.DataBL.BuscarPlantillaByConsulta(consulta, idioma))
            {
                ListViewItem item = new ListViewItem();
                item.Tag = pc.Id;
                item.Text = pc.Nombre;
                item.ToolTipText = string.Format("Parametros: {0}", SosBL.DataBL.GetParametrosPlantillaContenido(pc));
                item.ImageIndex = 0;
                listPlantillaContenidos.Items.Add(item);
            }
        }

        /// <summary>
        /// Ver plantillaContenido
        /// </summary>
        /// <param name="sender">sender</param>
        /// <param name="e">e</param>
        private void butVerPlantilla_Click(object sender, EventArgs e)
        {
            ListView.SelectedListViewItemCollection items = listPlantillaContenidos.SelectedItems;

            foreach (ListViewItem item in items)
            {
                PlantillaContenido pc = SosBL.DataBL.GetPlantillaContenidoById((int)item.Tag);
                FormPlantillaContenidoPreview pcPreviewFrm = new FormPlantillaContenidoPreview(pc);
                pcPreviewFrm.ModoForm = FormDetalle._modoForm.Navegacion;
                pcPreviewFrm.Show();
            }
            
        }
    }
}
